using System;
using System.Collections.Generic;
using ns26;
using ns27;
using Triton.Game.Mono;

namespace Triton.Game.Mapping
{
	[Attribute38("TGTFood")]
	public class TGTFood : MonoBehaviour
	{
		[Attribute38("TGTFood.FoodItem")]
		public class FoodItem : MonoClass
		{
			public FoodItem(IntPtr address, string className)
				: base(address, className)
			{
			}

			public FoodItem(IntPtr address)
				: this(address, "FoodItem")
			{
			}
		}

		public bool m_Phone => method_2<bool>("m_Phone");

		public GameObject m_Triangle => method_3<GameObject>("m_Triangle");

		public string m_TriangleSoundPrefab => method_4("m_TriangleSoundPrefab");

		public int m_StartingFoodIndex => method_2<int>("m_StartingFoodIndex");

		public float m_NewFoodDelay => method_2<float>("m_NewFoodDelay");

		public List<FoodItem> m_Food => method_3<Class271<FoodItem>>("m_Food")?.method_25();

		public FoodItem m_Drink => method_3<FoodItem>("m_Drink");

		public bool m_isAnimating => method_2<bool>("m_isAnimating");

		public int m_lastFoodIdx => method_2<int>("m_lastFoodIdx");

		public FoodItem m_CurrentFoodItem => method_3<FoodItem>("m_CurrentFoodItem");

		public float m_phoneNextCheckTime => method_2<float>("m_phoneNextCheckTime");

		public TGTFood(IntPtr address, string className)
			: base(address, className)
		{
		}

		public TGTFood(IntPtr address)
			: this(address, "TGTFood")
		{
		}

		public void Start()
		{
			method_8("Start");
		}

		public void Update()
		{
			method_8("Update");
		}

		public void HandleHits()
		{
			method_8("HandleHits");
		}

		public void BellAnimation()
		{
			method_8("BellAnimation");
		}

		public bool IsOver(GameObject go)
		{
			return method_11<bool>("IsOver", new object[1] { go });
		}
	}
}
